package com.mandala.entry;

import java.util.List;

import javax.naming.Name;

import org.springframework.ldap.odm.annotations.Attribute;
import org.springframework.ldap.odm.annotations.Entry;
import org.springframework.ldap.odm.annotations.Id;

import com.fasterxml.jackson.annotation.JsonIgnore;

@Entry(objectClasses = {"organizationalPerson","person","top","inetOrgPerson"},base = "ou=user")
public class User {
	 @Id
	 @JsonIgnore
	 private Name dn;
	 
	 @Attribute(name="cn")
	 private String cn;
	 
	 @Attribute(name="sn")
	 private String sn;
	 
	 @Attribute(name="displayName")
	 private String displayName;
	 
	 @Attribute(name="mail")
	 private String mail;
	 
	 @Attribute(name="sex")
	 private String sex;
	 
	 @Attribute(name="uid")
	 private String uid;
	 
	 @Attribute(name="departmentName")
	 private String departmentName;
	 
	 @Attribute(name="departmentCode")
	 private String departmentCode;
	 
	 @Attribute(name="wardName")
	 private String wardName;
	 
	 @Attribute(name="wardCode")
	 private String wardCode;
	 
	 @Attribute(name="salaryCode")
	 private String salaryCode;
	 
	 @Attribute(name="idNumber")
	 private String idNumber;
	 	 
	 @Attribute(name="currentAddress")
	 private String currentAddress;
	 
	 @Attribute(name="birthday")
	 private String birthday;
	 		 
	 @Attribute(name="nativePlace")
	 private String nativePlace;
	 		 	 
	 @Attribute(name="nationality")
	 private String nationality;
	 
	 @Attribute(name="employeeNature")
	 private String employeeNature;
	 
	 @Attribute(name="adminTitle")
	 private String adminTitle;
	 
	 @Attribute(name="adminTitleCode")
	 private String adminTitleCode;
	 
	 @Attribute(name="position")
	 private String position;
	 
	 @Attribute(name="positionCode")
	 private String positionCode;
	 
	 @Attribute(name="jobStatus")
	 private String jobStatus;
	 
	 @Attribute(name="jobStatusCode")
	 private String jobStatusCode;
	 
	 @Attribute(name="status")
	 private String status;
	 
	 @Attribute(name="isDelete")
	 private String isDelete;
	 
	 @Attribute(name="gmtValid")
	 private String gmtValid;
	 
	 @Attribute(name="gmtRegiste")
	 private String gmtRegiste;
	 
	 @Attribute(name="approveResult")
	 private String approveResult;
	 
	 @Attribute(name="approveComment")
	 private String approveComment;
	 
	 @Attribute(name="ou")
	 private List<String> ou; 			 			 			 			 			 			 			 		  		 	 		 	 		 	 
	 
	 @Attribute(name="btrtlCode")
	 private String btrtlCode; 
	 
	 @Attribute(name="btrtlName")
	 private String btrtlName;
	 
	 @Attribute(name="employeeNatureCode")
	 private String employeeNatureCode;
	 
	 @Attribute(name="photoUrl")
	 private String photoUrl;
	 
	 @Attribute(name="techTitleCode")
	 private String techTitleCode; 
	 
	 @Attribute(name="techTitle")
	 private String techTitle;
	 
	 @Attribute(name="techTitle1Code")
	 private String techTitle1Code; 
	 
	 @Attribute(name="techTitle1")
	 private String techTitle1;
	 
	 @Attribute(name="techTitle2Code")
	 private String techTitle2Code; 
	 
	 @Attribute(name="techTitle2")
	 private String techTitle2;
	 
	 @Attribute(name="techLevel")
	 private String techLevel;
	 
	 @Attribute(name="telephoneNumber")
	 private String telephoneNumber;
	 
	 //@Attribute(name="objectClass")
	// private List<String> objectClass;
	  
	// @Attribute(name="userPassword")
	// private String userPassword;

	public Name getDn() {
		return dn;
	}

	public void setDn(Name dn) {
		this.dn = dn;
	}

	public String getCn() {
		return cn;
	}

	public void setCn(String cn) {
		this.cn = cn;
	}

	public String getSn() {
		return sn;
	}

	public void setSn(String sn) {
		this.sn = sn;
	}

	//public String getUserPassword() {
		//return userPassword;
	//}

	//public void setUserPassword(String userPassword) {
	//	this.userPassword = userPassword;
	//}

	public String getDisplayName() {
		return displayName;
	}

	public void setDisplayName(String displayName) {
		this.displayName = displayName;
	}

	public String getMail() {
		return mail;
	}

	public void setMail(String mail) {
		this.mail = mail;
	}

	public String getSex() {
		return sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}

	public String getUid() {
		return uid;
	}

	public void setUid(String uid) {
		this.uid = uid;
	}

	public String getDepartmentName() {
		return departmentName;
	}

	public void setDepartmentName(String departmentName) {
		this.departmentName = departmentName;
	}

	public String getDepartmentCode() {
		return departmentCode;
	}

	public void setDepartmentCode(String departmentCode) {
		this.departmentCode = departmentCode;
	}

	public String getWardName() {
		return wardName;
	}

	public void setWardName(String wardName) {
		this.wardName = wardName;
	}

	public String getWardCode() {
		return wardCode;
	}

	public void setWardCode(String wardCode) {
		this.wardCode = wardCode;
	}

	public String getSalaryCode() {
		return salaryCode;
	}

	public void setSalaryCode(String salaryCode) {
		this.salaryCode = salaryCode;
	}

	public String getIdNumber() {
		return idNumber;
	}

	public void setIdNumber(String idNumber) {
		this.idNumber = idNumber;
	}

	public String getCurrentAddress() {
		return currentAddress;
	}

	public void setCurrentAddress(String currentAddress) {
		this.currentAddress = currentAddress;
	}

	public String getBirthday() {
		return birthday;
	}

	public void setBirthday(String birthday) {
		this.birthday = birthday;
	}

	public String getNativePlace() {
		return nativePlace;
	}

	public void setNativePlace(String nativePlace) {
		this.nativePlace = nativePlace;
	}

	public String getNationality() {
		return nationality;
	}

	public void setNationality(String nationality) {
		this.nationality = nationality;
	}

	public String getEmployeeNature() {
		return employeeNature;
	}

	public void setEmployeeNature(String employeeNature) {
		this.employeeNature = employeeNature;
	}

	public String getAdminTitle() {
		return adminTitle;
	}

	public void setAdminTitle(String adminTitle) {
		this.adminTitle = adminTitle;
	}

	public String getAdminTitleCode() {
		return adminTitleCode;
	}

	public void setAdminTitleCode(String adminTitleCode) {
		this.adminTitleCode = adminTitleCode;
	}

	public String getPosition() {
		return position;
	}

	public void setPosition(String position) {
		this.position = position;
	}

	public String getPositionCode() {
		return positionCode;
	}

	public void setPositionCode(String positionCode) {
		this.positionCode = positionCode;
	}

	public String getJobStatus() {
		return jobStatus;
	}

	public void setJobStatus(String jobStatus) {
		this.jobStatus = jobStatus;
	}

	public String getJobStatusCode() {
		return jobStatusCode;
	}

	public void setJobStatusCode(String jobStatusCode) {
		this.jobStatusCode = jobStatusCode;
	}

	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}

	public String getIsDelete() {
		return isDelete;
	}

	public void setIsDelete(String isDelete) {
		this.isDelete = isDelete;
	}

	public String getGmtValid() {
		return gmtValid;
	}

	public void setGmtValid(String gmtValid) {
		this.gmtValid = gmtValid;
	}

	public String getGmtRegiste() {
		return gmtRegiste;
	}

	public void setGmtRegiste(String gmtRegiste) {
		this.gmtRegiste = gmtRegiste;
	}

	public String getApproveResult() {
		return approveResult;
	}

	public void setApproveResult(String approveResult) {
		this.approveResult = approveResult;
	}

	public String getApproveComment() {
		return approveComment;
	}

	public void setApproveComment(String approveComment) {
		this.approveComment = approveComment;
	}

	public List<String> getOu() {
		return ou;
	}

	public void setOu(List<String> ou) {
		this.ou = ou;
	}

	public String getBtrtlCode() {
		return btrtlCode;
	}

	public void setBtrtlCode(String btrtlCode) {
		this.btrtlCode = btrtlCode;
	}

	public String getBtrtlName() {
		return btrtlName;
	}

	public void setBtrtlName(String btrtlName) {
		this.btrtlName = btrtlName;
	}

	public String getEmployeeNatureCode() {
		return employeeNatureCode;
	}

	public void setEmployeeNatureCode(String employeeNatureCode) {
		this.employeeNatureCode = employeeNatureCode;
	}

	public String getPhotoUrl() {
		return photoUrl;
	}

	public void setPhotoUrl(String photoUrl) {
		this.photoUrl = photoUrl;
	}

	public String getTechTitleCode() {
		return techTitleCode;
	}

	public void setTechTitleCode(String techTitleCode) {
		this.techTitleCode = techTitleCode;
	}

	public String getTechTitle() {
		return techTitle;
	}

	public void setTechTitle(String techTitle) {
		this.techTitle = techTitle;
	}

	public String getTelephoneNumber() {
		return telephoneNumber;
	}

	public void setTelephoneNumber(String telephoneNumber) {
		this.telephoneNumber = telephoneNumber;
	}

	public String getTechTitle1Code() {
		return techTitle1Code;
	}

	public void setTechTitle1Code(String techTitle1Code) {
		this.techTitle1Code = techTitle1Code;
	}

	public String getTechTitle1() {
		return techTitle1;
	}

	public void setTechTitle1(String techTitle1) {
		this.techTitle1 = techTitle1;
	}

	public String getTechTitle2Code() {
		return techTitle2Code;
	}

	public void setTechTitle2Code(String techTitle2Code) {
		this.techTitle2Code = techTitle2Code;
	}

	public String getTechTitle2() {
		return techTitle2;
	}

	public void setTechTitle2(String techTitle2) {
		this.techTitle2 = techTitle2;
	}

	public String getTechLevel() {
		return techLevel;
	}

	public void setTechLevel(String techLevel) {
		this.techLevel = techLevel;
	}
	
	

	//public List<String> getObjectClass() {
	//	return objectClass;
	//}

	//public void setObjectClass(List<String> objectClass) {
	//	this.objectClass = objectClass;
	//}
}
